﻿using System;

namespace UniRx.Operators
{
	// Token: 0x020002DC RID: 732
	internal class ImmutableReturnUnitObservable : IObservable<Unit>, IOptimizedObservable<Unit>
	{
		// Token: 0x06000FA1 RID: 4001 RVA: 0x0004884A File Offset: 0x00046C4A
		private ImmutableReturnUnitObservable()
		{
		}

		// Token: 0x06000FA2 RID: 4002 RVA: 0x00048852 File Offset: 0x00046C52
		public bool IsRequiredSubscribeOnCurrentThread()
		{
			return false;
		}

		// Token: 0x06000FA3 RID: 4003 RVA: 0x00048855 File Offset: 0x00046C55
		public IDisposable Subscribe(IObserver<Unit> observer)
		{
			observer.OnNext(Unit.Default);
			observer.OnCompleted();
			return Disposable.Empty;
		}

		// Token: 0x04000918 RID: 2328
		internal static ImmutableReturnUnitObservable Instance = new ImmutableReturnUnitObservable();
	}
}
